#pragma once
#include <string>
#include <vector>
#include "..\cryptopp560\Config.h"

namespace AppliedCryptography
{
	namespace AC = AppliedCryptography;

	class NotationParser
	{
	public:
		virtual std::vector<byte> Encode(std::string& input) const = 0;
		virtual std::vector<byte> Encode(const char* input) const = 0;
		virtual std::vector<byte> operator()(std::string& input) const = 0;
		virtual std::vector<byte> operator()(const char* input) const = 0;

	public:
		virtual std::string Decode(std::vector<byte>& input) const = 0;
		virtual std::string operator()(std::vector<byte>& input) const = 0;
	};
};
